package com.erp.erp_servers.InspectCargo;

import com.erp.erp_entitys.InspectCargo.*;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface IInspectCargoProductService {
    int deleteByPrimaryKey(Integer id);

    int insert(InspectCargoProductEntity record);

    int insertSelective(InspectCargoProductEntity record);

    InspectCargoProductEntity selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(InspectCargoProductEntity record);

    int updateByPrimaryKey(InspectCargoProductEntity record);

    List<InspectCargoProductEntity> selectProductByIcId(Integer icId);

    PageInfo<CarryPlanVo> selectCarryPlanList(CarryPlanVo vo);

    PageInfo<InspectCargoProductEntity> selectCarryPlanProductByCpId(Integer cpId);

    PageInfo<InspectCargoProductEntity> selectCarryPlanProductByCarryPlanIds(List<Integer> idList);

    PageInfo<StockVo> selectStockList(StockVo vo);

    PageInfo<InspectCargoProductEntity> selectStockProductByStockId(Integer stockId);

    PageInfo<InspectCargoProductEntity> selectStockProductByStockIds(@Param("idList") List<Integer> idList);

    /**
     * 按出运计划id 添加验货产品记录
     * @param inspectCargoId 验货主键
     * @param shipmentPlanId 出运计划id
     * @return 记录数
     */
    int generateInspectCargoProductByShipmentPlanId(Integer inspectCargoId, String shipmentNo);
}